Unity2D SpriteRenderer上显示文字 | 您所在的位置:网站首页 › unity 物体显示在ui上 › Unity2D SpriteRenderer上显示文字 |
前言
Unity2D没有提供SpriteRenderer上显示文字的原生方案。经过笔者探索,有以下两种方式可供选择。 1,Canvas节点挂载方式 2,TextMesh方式 Canvas节点挂载方式1,新建Canvas节点 2,添加Text组件 在需要显示文字的地方,新建一个空节点bg,作为Text组件的父物体,设置bg的pos归零,后续可以通过调节bg的scale来控制Text的FontSize。 在bg下添加子物体Text。注意需要设置bg和Text的Layer和步骤1中提到的Canvas的Layer一致,否则不渲染。 TextMesh方式通过3D Object——>3D Text的方式添加TextMesh。 设置Offset Z为-1,同时把SpriteText.cs脚本拖拽到TextMesh上。脚本内容如下。 public class SpriteText : MonoBehaviour { void Start() { var parent = transform.parent; var parentRenderer = parent.GetComponent(); var renderer = GetComponent(); renderer.sortingLayerID = parentRenderer.sortingLayerID; renderer.sortingOrder = parentRenderer.sortingOrder; } }来源:https://answers.unity.com/questions/620747/render-text-on-sprite-prefab-2d-ios.html |
CopyRight 2018-2019 实验室设备网 版权所有 |